package cn.oms.oms.entity;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import java.time.LocalDate;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import java.util.Date;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 *
 * </p>
 *
 * @author AllenChen曾晨
 * @since 2022-04-29
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("item")
@ApiModel(value="Item对象", description="")
public class Item implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "产品ID")
    @TableId(value = "itemId", type = IdType.AUTO)
    private Integer itemId;

    @ApiModelProperty(value = "产品名称")
    @TableField("itemName")
    private String itemName;

    @ApiModelProperty(value = "产品简称")
    @TableField("itemNameSN")
    private String itemNameSN;

    @ApiModelProperty(value = "产品包装规格详情")
    @TableField("itemSpecificationDetail")
    private String itemSpecificationDetail;

    @ApiModelProperty(value = "成分")
    @TableField("ingredientName")
    private String ingredientName;

    @ApiModelProperty(value = "产品类型")
    @TableField("itemType")
    private Integer itemType;

    @ApiModelProperty(value = "产品价格")
    @TableField("itemPrice")
    private BigDecimal itemPrice;

    @ApiModelProperty(value = "产品价格单位")
    @TableField("itemUnitName")
    private String itemUnitName;

    @ApiModelProperty(value = "厂家名称")
    @TableField("manufacturerName")
    private String manufacturerName;

    @ApiModelProperty(value = "厂家国药准字号")
    @TableField("manufacturerApprovalId")
    private String manufacturerApprovalId;

    @ApiModelProperty(value = "频次详情")
    @TableField("frequencyDetail")
    private String frequencyDetail;

    @ApiModelProperty(value = "补充频次详情")
    @TableField("supplementaryFrequencyDetail")
    private String supplementaryFrequencyDetail;

    @ApiModelProperty(value = "用餐时间详情")
    @TableField("mealTimeDetail")
    private String mealTimeDetail;

    @ApiModelProperty(value = "用量")
    @TableField("userLevel")
    private Integer userLevel;

    @ApiModelProperty(value = "用量单位名称")
    @TableField("userLevelUnitName")
    private String userLevelUnitName;

    @ApiModelProperty(value = "产品治疗症状")
    @TableField("symptomName")
    private String symptomName;

    @ApiModelProperty(value = "是否为处方用药")
    @TableField("prescriptionFlag")
    private Integer prescriptionFlag;

    @ApiModelProperty(value = "创建时间")
    @TableField("createTime")
    private Date createTime;

    @ApiModelProperty(value = "删除标记")
    @TableField("deleteFlag")
    private Integer deleteFlag;

    /**
     * 当前问题包含的标签集合
     */
    //这个属性没有对应的列,需要使用下面的注解表示,否则数据库操作会报错
    @TableField(exist = false)
    private String returnItemTypeName;

    /**
     * 当前问题包含的标签集合
     */
    //这个属性没有对应的列,需要使用下面的注解表示,否则数据库操作会报错
    @TableField(exist = false)
    private String returnPrescriptionFlag;

    /**
     * 当前问题包含的标签集合
     */
    //这个属性没有对应的列,需要使用下面的注解表示,否则数据库操作会报错
    @TableField(exist = false)
    private String returnCreateTime;

}
